home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Whiteline: delta
/
whiteline CD Series - delta.iso
/
dtp
/
programm
/
mischen
/
mischen.doc
< prev
next >
Wrap
Text File
|
1995-11-25
|
7KB
|
158 lines
---------
MISCHEN
---------
MISCHEN ist ein Utility, das eine Verbindung zwischen ADIMENS und
CALAMUS herstellt. MISCHEN funktioniert ähnlich wie die Mischen-
Funktion in ADIMENS: In eine Eingabe-Maske, die Platzhalter für
Daten-Felder enthält, werden ADIMENS-Daten einkopiert. Dieses wird
für jeden Datensatz wiederholt. Die Ein- und Ausgabe-Dateien sind im
Calamus-Text-Format (CTX) und können direkt mit CALAMUS erstellt bzw.
verwendet werden.
MISCHEN kann natürlich nicht direkt auf ADIMENS-Daten zugreifen,
sondern holt sich die Daten aus einer ADIMENS-Export-Datei (EXP). Da
diese ein genormtes ASCII-Format hat, kann MISCHEN auch mit anderen
Datenbank-Programmen zusammenarbeiten, die dieses Format erzeugen
können!
Die Bedienung von MISCHEN:
MISCHEN fragt nach dem Start mit der Datei-Auswahl-Box nacheinander
nach 3 Dateien:
1.) Adimens-Export-Datei mit den einzumischenden Datensätzen.
2.) Calamus-Text-Datei als Maske mit den Platzhaltern für die Daten.
3.) Calamus-Text-Datei für die Ausgabe des fertigen Calamus-Textes.
Wird in der Auswahl-Box ABBRUCH gedrückt, wird MISCHEN abgebrochen.
Ansonsten startet das Programm den Misch-Vorgang. Dabei werden noch
einmal die drei gewählten Dateien und die Nummer des gerade bearbei-
teten Datensatzes angezeigt. Ist MISCHEN fertig, kehrt es automatisch
zum Desktop zurück.
Benutzt man einen Desktop, der Icons installieren kann wie z.B.
Gemini, Neodesk oder TOS 030, so kann MISCHEN auch auf dem Desktop
abgelegt werden. Dann werden die Export- und/oder Masken-Datei ein-
fach auf MISCHEN gezogen und die Frage nach diesen Dateien entfällt.
Damit MISCHEN etwas sinnvolles produziert, kommt es entscheidend
darauf an, daß die Export- und Masken-Datei korrekt aufgebaut sind
und beide zueinander passen.
Der Aufbau der ADIMENS-Export-Datei:
Eine ADIMENS-Export-Datei ist eine reine ASCII-Datei. In jeder Zeile
steht ein Datenfeld, gefolgt von einem CR ($0D) und einem LF ($0A).
Die Datensätze sind durch eine Leerzeile voneinander getrennt.
Dadurch sind die Datensätze aber nicht eindeutig bestimmt, denn wenn
ein Datenfeld leer ist, steht dafür ja auch eine Leerzeile. Diese
Leerzeile kann dann als das Ende eines Datensatzes gedeutet werden!
Das importierende Programm muß also wissen, wieviele Felder ein
Datensatz der Export-Datei hat.
MISCHEN hat zwei Möglichkeiten, dieses festzustellen: Entweder durch
einen speziellen Platzhalter in der Masken-Datei oder dadurch, daß im
ERSTEN Datensatz der Exportdatei ALLE Felder mindestens ein Zeichen
enthalten, z.B. Leerzeichen.
Da durch die Masken-Datei Datenfelder ausgewählt werden können und
auch die Reihenfolge verändert werden kann, ist Umfang und Anordnung
der Datenfelder beliebig. Man muß aber wissen, welches Datenfeld an
welcher Position steht, denn über diese Position werden die Daten-
felder in der Masken-Datei ausgewählt.
Am besten exportiert man alle Datenfelder in der Standard-Reihen-
folge. Falls diese bei längeren Datensätzen unklar ist, exportiert
man erstmal nur einen Datensatz, in dem alle Felder belegt sind und
druckt die erzeugte Export-Datei aus.
Wichtig ist noch, daß die ADIMENS-Export-Parameter (aufrufbar durch
einen Doppel-Klick auf das Export-Icon) auch auf die Standard-Werte
eingestellt sind: Datensatz-Trennung = (13)(10)(13)(10), Feld-Tren-
nung = (13)(10), Feldeinfassung: keine.
Der Aufbau der CALAMUS-Masken-Datei:
Die Masken-Datei hat das normale CTX-Format und sollte mit dem in
CALAMUS integrierten Texteditor erzeugt werden.
Für die Datenfelder werden Platzhalter der Art #Nummer# gesetzt. Die
Nummer bezeichnet die Position des Datenfeldes innerhalb der Export-
Datei beginnend bei 1, also #1#, #2# usw. Es gibt zwei Sonder-
funktionen: Zum einen die #0#, sie stellt die laufende Nummer des
Datensatzes dar. Oben erwähnt wurde schon das Problem der Erkennung
des Datensatzendes: Wenn der erste Datensatz leere Felder enthält,
muß das letzte Datenfeld eines Datensatzes in der Masken-Datei be-
nutzt werden. Ist dafür aber keine Verwendung, setzt man vor die
Nummer ein Minuszeichen, z.B.: #-23#. Dadurch ist dieses Feld in-
tern vorhanden, wird aber nicht gefüllt, sondern gelöscht.
In der Masken-Datei sollten auch alle Format-Zeichen, wie Schriftart,
Textlineale usw., die pro Datensatz benötigt werden, enthalten sein.
Sind dabei einige Format-Zeichen überflüssig, z.B. durch die ständige
Wiederholung der Maske (mit jeweils anderen Daten), so werden diese
von MISCHEN herausgefiltert. Enthält die Maske z.B. nur ein Text-
lineal, ist dieses in der Ausgabe-Datei auch nur einmal vorhanden,
nämlich im ersten Datensatz.
Wenn pro Datensatz ein Text-Rahmen benutzt werden soll, geht man
folgendermaßen vor:
Es werden soviele Text-Rahmen erzeugt, wie Datensätze vorhanden sind.
Mit den Textfluß-Funktionen (Piping) werden diese Rahmen in der ge-
wünschten Reihenfolge verbunden. In den ersten Rahmen wird der
Masken-Text geschrieben, dessen letztes Zeichen ein "Erzwungener
Umbruch zum nächsten Rahmen"-Formatzeichen ist. Dieser Masken-Text
wird exportiert und mit MISCHEN verarbeitet. Der Ausgabe-Text wird in
den ersten Rahmen der Text-Fluß-Kette importiert. Calamus formatiert
dann so, daß in jedem Rahmen ein Datensatz steht.
Man sieht, speziell die Erstellung der Masken-Datei ist ein wenig
kniffelig. Am besten exportiert man erst einmal nur zwei oder drei
Datensätze und probiert aus, ob alles so ist, wie man es sich vor-
stellt.
Wenn das Prinzip dann klar ist, hat man eine ganze Menge
Möglichkeiten!
MISCHEN ist ein Public-Domain Programm!
Sie dürfen und sollen MISCHEN an Interessenten weitergeben, sofern
sie das Programm komplett (mit dieser Anleitung) und unverändert
lassen.
MISCHEN geschrieben von: Christian Nepper
Eißendorfer Str. 31
2100 Hamburg 90
BTX: 0407657663-0001
Falls MISCHEN für Sie eine große Hilfe beim Arbeiten mit CALAMUS und
ADIMENS ist, zeigen Sie Ihren Dank durch ein kleine Spende auf mein
Konto:
Kreissparkasse Harburg, BLZ 207 500 00, Kto-Nr: 228 775.
D A N K E !!